package com.ruoyi.system.domain.vo;

import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.github.pagehelper.util.StringUtil;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class BCaseVo {
    /**
     * id
     */
    private Long id;

    /**
     * 用户Id
     */
    private Long userId;

    /**
     * 任务Id
     */
    private Long taskId;

    /**
     * 名称
     */
    private String name;

    /**
     * 类型，0-医生，1-患者
     */
    private String type;

    /**
     * 标签，json
     */
    private String labels;

    /**
     * 疾病情况
     */
    private String disease;

    /**
     * 转移情况
     */
    private String change;

    /**
     * 确诊时间
     */
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String diagnosisTime;

    /**
     * 所在医院
     */
    private String hospital;

    /**
     * 治疗过程
     */
    private String treatment;

    /**
     * 治疗方案
     */
    private String programme;

    /**
     * 文件来源
     */
    private String source;

    /**
     * 状态，0-草稿，1-已确认
     */
    private String status;

    /**
     * 创建者
     */
    private String createBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 备注
     */
    private String remark;

    /**
     * 评论数
     */
    private Integer commentNum;

    /**
     * 研讨会信息
     */
    private BConferenceVo conferenceVo;

    /**
     * 医生信息
     */
    private BUserVo userVo;

    /**
     * 评论用户列表
     */
    private List<BUserVo> topicalUserList;

    /**
     * 标签列表
     */
    private List<String> labelList;

    public List<String> getLabelList() {
        if(StringUtil.isEmpty(labels)){
            return null;
        }else{
            this.labelList = JSONObject.parseArray(this.labels, String.class);
            this.setLabels(null);
            return this.labelList;
        }
    }

}
